1. Field of the Invention
The present invention relates to the field of data processing systems. Specifically, the present invention relates to a method and system for adapting data synchronization and transport between a host computer system and a peripheral computer system, the adaptation depending on the transport infrastructure used.
2. Related Art
As the components required to build a computer system have reduced in size, new categories of computer systems have emerged. One of the new categories of computer systems is the “palmtop” computer system. A palmtop computer system (otherwise known as a personal digital assistant or PDA) is a computer that is small enough to be held in the hand of a user and can be “palm-sized.” Most PDA computer systems are used to implement various Personal Information Management (PIM) applications such as an address book, a daily organizer and electronic notepads, to name a few.
It has proven convenient to transfer data between a PDA and other computer systems. For example, a PDA may send or retrieve e-mail; synchronize an address book, a daily organizer, or an electronic notepad; or download software from a host system. Furthermore, the PDA may exchange data with the host system. For example, the PDA may be used to enter sales data into a corporate server. In some cases, the other computer system is a desktop computer located a few feet from the PDA, in other cases, the other computer system may be a server located across the continent. PDAs may also exchange data with devices such as cellular phones, as well as other PDAs.
To perform these data exchanges, PDAs may connect to other computers and devices in a variety of ways. For example, when synchronizing with a desktop computer, the user inserts the PDA into a serial cradle device, which connects to the desktop via a serial cable. When connecting to a remote server, the PDA may first contact a network via a modem. The network itself may then connect to the remote server in a variety of ways. If the PDA's user does not have access to a modem, the PDA may be used to connect to a cellular phone via radio frequency. The cellular phone then connects further down the chain to get at the desired data. Alternatively, the PDA may be inserted into a network cradle to make the connection. Thus, the user of a PDA may use a variety of transport mechanisms (e.g., RF, IR, wireless, serial cable, network cradle) to make the connection to the desired data source.
Significantly, these transport mechanisms have different bandwidths, reliabilities, security characteristics, proximities, and cost characteristics. For example, wired transport mechanisms vary in speed from Fast Ethernet to analog modems. Wireless transport mechanisms vary in bandwidth also, from relatively fast 802.11 wireless LAN to slower Mobitex. Furthermore, the different transport mechanisms present different security concerns. Therefore, ideally, when using different transport mechanisms, different parameters (e.g., data compression, data encryption, etc.) are used.
However, when PDAs couple with host systems, the same communication parameters are used for all transport mechanisms. Thus, whether a user is on a high bandwidth LAN or a lower bandwidth cellular link, the same amount of data is transferred regardless of the communication link used. This results in high connection costs for the user, as well as time consuming transfers. Similar problems are faced with other parameters: for instance, a user may need data encryption over a relatively unsecure link, such as wireless, but does not want that overhead when using a secure connection. Unfortunately, conventional systems either force the user to use data encryption at all times or not at all, depending on the particular system in place.
A further problem with this conventional method arises because PDAs generally have relatively low processing power. Therefore, a PDA may take a relatively long time to perform data compression/decompression processes or data encryption processes. Consequently, it is undesirable to force a PDA to send or receive data in these ways for all communication protocols. Unfortunately, the above conventional transfer methods may force a PDA to do just this.
Other conventional systems require a different server to handle each of the different transport mechanisms. Clearly, multiple servers add to the expense and complexity of the design, as a data stream must be routed according to the transport mechanism. Furthermore, as multiple transport mechanisms may be used for a single logical connection, this conventional method faces challenges in routing the data stream to the correct server based on the type of transport mechanism. Additionally, a server may not exist to handle the particular combination of transport mechanisms used.